草庐IT

python - 在 PyInstaller 中找不到导入的模块

全部标签

testing - 在 init 函数中使用相对路径在测试中找不到

在单元测试无法找到的init函数中使用相对路径时,我遇到了一个烦人的问题。假设我有一个结构如下的项目:.├──conf│  └──blacklist├──filter│  ├──filter.go│  └──filter_test.go并且在filter.go的init函数中,我尝试使用相对路径conf/blacklist加载黑名单,避免加载它多次。由于默认工作目录恰好是项目根目录,因此它适用于编译后的二进制文件。然而filter_test.go会panicpanic:openconf/blacklist:nosuchfileordirectory,因为gotest总是使用包目录作为工

go - 如何实现 Python functools.wraps 等效?

我知道我可以通过返回函数在Go中包装函数,如何在Go中实现等效的Pythonfunctools.wraps?如何将属性附加到Go中的函数?就像下面的Python代码。fromfunctoolsimportwrapsdefd(f):defwrapper(*args):f(*args)returnwrapperdefd_wraps(f):@wraps(f)defwrapper(*args):f(*args)returnwrapper@ddeff(a=''):printa@d_wrapsdefg(a=''):printaif__name__=='__main__':print'functio

python - python中的AES-GCM解密

我正在尝试解密从AES_GCM生成的密文。密文是从golang中的“crypto/aes”库生成的。现在,我正在尝试使用cryptodome库破译python中的加密文本。funcAESEncryption(key[]byte,plaintext[]byte)([]byte,error){c,err:=aes.NewCipher(key)iferr!=nil{log.Printf("ErrorocurredingeneratingAESkey%s",err)returnnil,err}gcm,err:=cipher.NewGCM(c)iferr!=nil{returnnil,err}n

sql-server - 如何使用 golang 导入 csv 并保存在 MSSQL 数据库中?

这是我的代码。目前,我只是阅读了CSV文件的内容。我需要使用Go语言应用程序将此CSV文件迁移到MSSQLpackagemainimport("encoding/csv""log""os")funcmain(){rows:=readOrders("Ec2Instances.csv")}funcreadOrders(namestring)[][]string{f,err:=os.Open(name)iferr!=nil{log.Fatalf("Cannotopen'%s':%s\n",name,err.Error())}deferf.Close()r:=csv.NewReader(f)r

rest - 如何使用 Golang 实现导入数据功能?

我有2个方法,用于GET和POST。第一个是:varJoinmap[string]intfuncMapTheFields(c*gin.Context){vardata[]string//OpenthecsvfilecsvFile,_:=os.Open("customers.csv")reader:=csv.NewReader(csvFile)line,_:=reader.ReadAll()fori:=0;i第二个也和第一个类似。它只是将值保存到数据库中。我一直面临的问题是,我必须将从csv文件中获取的字段映射到我项目中的字段,为此我制作了一个名为Join的映射如上所示,我正在访问第二个

go - 将 Golang1.11 与模块一起使用时,Protobuf 导入 "cannot find file"

我使用的是支持模块的Golang1.11,所以我的项目没有放入$GOPATH我想编译proto文件,我的文件结构我的TaskInfo.protosyntax="proto3";packagechaochaogege.filecatcher.common;optiongo_package="common";import"chaochaogege.com/filecatcher/common/ChunkInfo.proto";messageTaskInfo{stringname=1;stringstorePath=2;uint32workersNum=3;uint32totalSize=4

Golang 导入周期挑战

我在我的go代码中遇到循环依赖(不允许导入循环)的问题,并且不确定解决它的最佳方法。我认为我对golang接口(interface)缺乏了解可能会影响我看清前进方向的能力。我的问题-我有两个包裹:Event-Event主要是“父项”,会多次调用锻炼包Workout-在一种情况下,我需要调用事件包,这会产生循环依赖,因为Event已经消耗了Workout允许Workout在事件域中调用函数(而不是对象上的方法)的最佳方法是什么?下面是我的简化代码,以帮助提供一些上下文//workoutpackage//Thisisaprivatefunctionontheworkoutpackageth

go - 通过导入父目录,使用 golang 导入子包?

我有这个main.go文件:packagemainimport"one/entities/bar"funcmain(){}我有这个目录结构:当我构建我的项目时:goinstallmain我得到这个编译错误:src/main/main.go:3:8:noGofilesin/home/oleg/codes/oresoftware/oredoc/test/builds/go/src/one/entities/bar这个错误是有道理的。有什么方法可以从one/entities/bar目录中导入所有子包吗?像这样:packagemainimportbar"one/entities/bar/*"f

go - 如何将不遵守主要子文件夹约定的 Go 包的 v2.0.0 作为模块引用

我们正在运行一个spike来确定我们如何或者是否可以将我们的堆栈迁移到Go模块。我们依赖v2.0.0https://github.com/gbrlsnchs/jwt但它既没有转换为模块本身,也没有遵守将主要版本放在子文件夹下的Go约定。在将我们的内部包转换为具有这种依赖性的模块时,我们有哪些选择? 最佳答案 github.com/gbrlsnchs/jwt在v2.0.0有一个go.mod文件表明它的规范导入路径是github.com/gbrlsnchs/jwt/v2.更新你的import语句以使用该路径——它也应该在Go1.9.7、

google-app-engine - 如何使用 go 模块在 GAE SE Go 1.11 上导入私有(private)存储库?

我在github上有一个go库包仓库作为私有(private)仓库。我写了一个像下面这样的项目来导入上面的库包。packagemainimport"github.com/foo/libpackage"funcmain(){:}这是目录层次结构。path/to/project|-main.go|-go.mod`-go.sum部署时出现错误,无法解决go:github.com/foo/libpackage@v0.0.0-20181127123728-008fddddc190:gitfetch-foriginrefs/heads/*:refs/heads/*refs/tags/*:refs/